TOP

SQL Server के लिए SQL Stored Procedures

Stored Procedure क्या है?

Stored Procedure (संग्रहीत प्रक्रिया) SQL कोड तैयार किया जाता है जिसे संग्रहीत किया जा सकता है ताकि कोड को बार-बार उपयोग किया जा सके।

इसलिए, यदि आपके पास एक SQL क्वेरी है जिसे आप बार-बार लिखते हैं, तो इसे एक संग्रहीत प्रक्रिया के रूप में सहेजें और फिर इसे निष्पादित करने के लिए कॉल करें।

आप संग्रहीत प्रक्रिया में पैरामीटर भी पास कर सकते हैं ताकि संग्रहीत प्रक्रिया पारित पैरामीटर मानों पर कार्य कर सके।


Stored Procedure सिंटैक्स

CREATE PROCEDURE procedure_name
AS 
sql_statement
GO

Stored Procedure निष्पादित करना

EXEC procedure_name

प्रदर्शन डेटाबेस

निम्नलिखित "Northwind" डेटाबेस की "Customers" ("ग्राहक") तालिका से एक नमूना है:

CustomerIDCustomerNameContactNameAddressCityPostalCodeCountry
1Alfreds FutterkisteMaria AndersObere Str. 57Berlin12209Germany
2Ana Trujillo Emparedados y heladosAna TrujilloAvda. de la Constitución 2222México D.F.5021Mexico
3Antonio Moreno TaqueríaAntonio MorenoMataderos 2312México D.F.5023Mexico
4Around the HornThomas Hardy120 Hanover Sq.LondonWA1 1DPUK
5Berglunds snabbköpChristina BerglundBerguvsvägen 8LuleåS-958 22Sweden

Stored Procedure उदाहरण

निम्नलिखित SQL क्वेरी "SelectAllCustomers" नामक एक संग्रहीत प्रक्रिया बनाती है जो ग्राहक तालिका से सभी रिकॉर्ड का चयन करती है:

CREATE PROCEDURE SelectAllCustomers
AS
SELECT * FROM Customers
GO

आइए उपरोक्त संग्रहीत प्रक्रिया को निम्नानुसार निष्पादित करें:

EXEC SelectAllCustomers

Stored Procedure एक पैरामीटर के साथ

निम्नलिखित SQL क्वेरी एक संग्रहीत प्रक्रिया बनाती है जो ग्राहक तालिका से किसी विशिष्ट शहर के ग्राहकों का चयन करती है:

CREATE PROCEDURE SelectAllCustomers @City nvarchar(30)
AS
SELECT * FROM Customers WHERE City = @City
GO

आइए उपरोक्त संग्रहीत प्रक्रिया को निम्नानुसार निष्पादित करें:

EXEC SelectAllCustomers @City = 'London'

Stored Procedure कई मापदंडों के साथ

कई मापदंडों को कॉन्फ़िगर करना बहुत आसान है, अर्थात् प्रत्येक पैरामीटर और डेटा प्रकार को अल्पविराम से अलग करके सूचीबद्ध करें जैसा कि नीचे दिखाया गया है।

निम्नलिखित SQL कथन एक संग्रहीत प्रक्रिया बनाता है जो ग्राहक तालिका से एक विशिष्ट ज़िप कोड वाले विशिष्ट शहर से ग्राहकों का चयन करता है:

CREATE PROCEDURE SelectAllCustomers @City nvarchar(30), @PostalCode nvarchar(10)
AS
SELECT * FROM Customers WHERE City = @City AND PostalCode = @PostalCode
GO

आइए उपरोक्त संग्रहीत प्रक्रिया को निम्नानुसार निष्पादित करें:

EXEC SelectAllCustomers @City = 'London', @PostalCode = 'WA1 1DP'